/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package fr.fvaz.footballmanager.beans;

import java.io.Serializable;
import java.util.Date;
import javax.persistence.AttributeOverride;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;

/**
 *
 * @author felipe
 */
@Entity(name="joueur")
@AttributeOverride(name="id", column=@Column(name="idJoueur"))
public class Joueur extends Personne implements Serializable {
    
    private String surnom;
    
    private int taille;
    
    private int poids;
    
    private String poste;
    
    @ManyToOne( cascade={CascadeType.ALL}, optional=false)
    @JoinColumn(name="idClub")
    private Club club;

    public Joueur() {}

    public Joueur(Long idJoueur, String nom, String prenom, Date date_naissance, String lieu_naissance, String surnom, int taille, int poids, String poste, Club club) {
        
        super( idJoueur, nom, prenom, date_naissance, lieu_naissance);
        this.surnom = surnom;
        this.taille = taille;
        this.poids = poids;
        this.poste = poste;
        this.club = club;
        
    }
    
    public String toString() {
        return "Nom:" + this.getNom() + 
                "\nPrenom:" + this.getPrenom() + 
                "\nDate de naissance:" + this.getDate_naissance() +
                "\nLieu de naissance:" + this.getLieu_naissance() +
                "\nSurnom:" + this.getSurnom() +
                "\nTaille:" + this.taille + "cm" +
                "\nPoids:" + this.poids + "kg" +
                "\nPoste:" + this.poste +
                "\nClub:" + this.getClub().getNom();
    }

    /**
     * @return the surnom
     */
    public String getSurnom() {
        return surnom;
    }

    /**
     * @param surnom the surnom to set
     */
    public void setSurnom(String surnom) {
        this.surnom = surnom;
    }

    /**
     * @return the taille
     */
    public int getTaille() {
        return taille;
    }

    /**
     * @param taille the taille to set
     */
    public void setTaille(int taille) {
        this.taille = taille;
    }

    /**
     * @return the poids
     */
    public int getPoids() {
        return poids;
    }

    /**
     * @param poids the poids to set
     */
    public void setPoids(int poids) {
        this.poids = poids;
    }

    /**
     * @return the poste
     */
    public String getPoste() {
        return poste;
    }

    /**
     * @param poste the poste to set
     */
    public void setPoste(String poste) {
        this.poste = poste;
    }

    /**
     * @return the club
     */
    public Club getClub() {
        return club;
    }

    /**
     * @param club the club to set
     */
    public void setClub(Club club) {
        this.club = club;
    }
    
    
    
}
